Skip to content

Retry checkout when a database request is dropped - #14

Closed
ostenbom wants to merge 1 commit into
webinar/mainfrom
webinar/payment-retries
Closed

ostenbom wants to merge 1 commit into
webinar/mainfrom
webinar/payment-retries

Conversation

@ostenbom

Copy link
Copy Markdown
Contributor

The database proxy occasionally drops a request while it fails over, which failed the whole checkout and showed the customer an error.

This adds withRetry, which retries with exponential backoff (3 attempts, starting at 100ms), and wraps the checkout's writes in it.

🤖 Generated with Claude Code

@vercel

vercel Bot commented Nov 11, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
endform-playwright-tutorial Ready Ready Preview Nov 11, 2026 6:31pm UTC

Request Review

@endform-dev

endform-dev Bot commented Nov 11, 2026 •

Copy link
Copy Markdown

🔴 New test failure

Test: Payment history › should record exactly one payment after upgrading to Plus (chromium)
Status: passes on webinar/main, fails on 982f134

await expect(payments).toHaveCount(1);

Error:

expect(locator).toHaveCount(expected) failed

Locator:  getByTestId('payment')
Expected: 1
Received: 3

Watch replay:

Replay of payment-history.spec.ts › Payment history › should record exactly one payment after upgrading to Plus (chromium)

The database proxy occasionally drops a request while it fails over,
which failed the whole checkout and showed the customer an error. Retry
the checkout's writes with exponential backoff before giving up.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch was successfully deployed

1 active deployment
Preview — 982f1349 Deployed Nov 11, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant